#include <pybind11/pybind11.h>
#include <iostream>

namespace py = pybind11;

#include "GuiManagerWrapper.h"
#include "ViewerWidgetWrapper.h"

// 导入Qt相关头文件
#pragma push_macro("slots")
#pragma push_macro("signals")
#undef slots
#undef signals
#include <QWidget>
#pragma pop_macro("slots")
#pragma pop_macro("signals")
// 导入Qt相关头文件

// QWidget* widgetLoad()
// {
//     return new QWidget();
// }

PYBIND11_MODULE(_odv_gui,m){
//    m.def("widgetLoad", &widgetLoad, py::return_value_policy::reference, "Load ODV GUI widget");

    bind_GuiManager_ColorBarPosition(m);
    bind_GuiManager(m);
    bind_QtGuiManager(m);

    bind_ViewerWidget(m);
}